home *** CD-ROM | disk | FTP | other *** search
/ Games of Daze / Infomagic - Games of Daze (Summer 1995) (Disc 1 of 2).iso / x2ftp / msdos / source / swagd-f / dos.swg / 0074_Where is DOS.pas < prev    next >
Encoding:
Pascal/Delphi Source File  |  1994-08-24  |  1.2 KB  |  45 lines

  1. {
  2.   Coded By Frank Diacheysn Of Gemini Software
  3.  
  4.   FUNCTION WHEREISDOS
  5.  
  6.   Input......: None
  7.              :
  8.              :
  9.              :
  10.              :
  11.  
  12.  
  13.   Output.....: 2-Character String, Explained Further Below.
  14.              :
  15.              :
  16.              :
  17.              :
  18.  
  19.   Example....: IF Chars[1] = 'O' THEN
  20.              :   WriteLn('DOS Is Resident In ROM')
  21.              : ELSE
  22.              :   WriteLn('DOS Is Resident In RAM');
  23.              : IF Chars[2] = 'H' THEN
  24.              :   WriteLn('DOS Is Loaded Into High Memory (HMA)')
  25.              : ELSE
  26.              :   WriteLn('DOS Is Loaded Into Conventional Memory');
  27.  
  28.   Description: Returns The Status Of Where DOS Is Loaded Using The Following:
  29.              : Chars[1] = 'O' (Resident In ROM)
  30.              : Chars[1] = 'A' (Resident In RAM)
  31.              : Chars[2] = 'H' (Loaded In High Memory)
  32.              : Chars[2] = 'C' (Loaded in Conventional Memory)
  33.  
  34. }
  35. FUNCTION WHEREISDOS:STRING;
  36. VAR Chars : ARRAY [1..2] OF CHAR;
  37. BEGIN
  38.   Regs.AH := $33;
  39.   Regs.AL := $06;
  40.   Intr( $33,Regs );
  41.   IF (Regs.DH AND $04)=$04 THEN Chars[1] := 'O' ELSE Chars[1] := 'A';
  42.   IF (Regs.DH AND $08)=$08 THEN Chars[2] := 'H' ELSE Chars[2] := 'C';
  43.   WHEREISDOS := Chars[1]+Chars[2];
  44. END;
  45.